package com.zt.teacher.service;

import com.zt.common.Do.ClassWithTeachDO;
import com.zt.common.pojo.ActiveClass;
import com.zt.teacher.dto.ActiveClassDTO;
import com.zt.teacher.dto.ClassTimeDTO;
import com.zt.teacher.dto.StuScoreSummaryDTO;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

/**
 * description:
 * author:zt
 * date:2021-12-16
 */
public interface ActiveClassService {

    void insert(ActiveClassDTO activeClassDTO, HttpServletRequest request);

    void update(ActiveClass activeClass);

    List<ActiveClass> getClassByTeacherId(String semester, HttpServletRequest request);

    String getClassTimeByOriginClassId(ClassTimeDTO classTimeDTO);

    String getClassTimeByTeacherId(String semester,HttpServletRequest request);

    List<ActiveClass> getElectiveClassBySemester(String semester);

    void attendClass(int classId, HttpServletRequest request);

    List<ActiveClass> getTeacherCurrentClass(String semester, HttpServletRequest request);

    List<ClassWithTeachDO> getStudentCurrentClass(String semester, HttpServletRequest request);

    String uploadResources(MultipartFile file, int classId) throws IOException;

    void deleteResources(int classId,String fileName);

    List<ActiveClass> getClassByTeaAndStuId(HttpServletRequest request,String studentId, String semester);

    ActiveClass getClassById(int classId);

    ArrayList<StuScoreSummaryDTO> getSummaryByClassId(HttpServletRequest request, int classId);
}
